Фрагмент для ознакомления
2
МОДЕЛИРОВАНИИ
1.1. Сущность и принципы динамического программирования
Динамическое программирование представляет собой математический метод оптимизации, который особенно эффективен при решении задач, имеющих многошаговую структуру. Метод был разработан и формализован американским математиком Ричардом Беллманом в 1950-х годах. Основная идея динамического программирования заключается в декомпозиции сложной задачи на последовательность более простых подзадач, решение которых позволяет найти оптимальное решение исходной задачи.
Динамическое программирование – это метод оптимизации, приспособленный к операциям, в которых процесс принятия решения может быть разбит на этапы (шаги) [24, с. 87]. Метод применяется для решения задач, в которых необходимо принимать последовательные взаимосвязанные решения, причем каждое решение влияет на возможности, доступные в будущем.
Основополагающим для динамического программирования является принцип оптимальности Беллмана, который можно сформулировать следующим образом: оптимальная стратегия обладает тем свойством, что независимо от начального состояния и начального решения последующие решения должны составлять оптимальную стратегию относительно состояния, получающегося в результате первоначального решения [24, с. 88]. Другими словами, какими бы ни были начальное состояние и первоначальное решение, последующие решения должны быть оптимальными относительно состояния, полученного в результате первоначального решения.
Формально принцип оптимальности можно записать в виде рекуррентного соотношения:
f(s) = max/min{g(s, a) + f(s')} (1),
где f(s) – оптимальное значение целевой функции, начиная с состояния s;
g(s, a) – непосредственный выигрыш/проигрыш при переходе из состояния s в состояние s' при выборе решения a;
f(s') – оптимальное значение целевой функции, начиная с состояния s'.
Как указывает Пустовойтов П.Е., «для применения метода динамического программирования задача должна обладать определенными свойствами: она должна иметь оптимальную подструктуру и перекрывающиеся подзадачи» [21, с. 156]. Оптимальная подструктура означает, что оптимальное решение задачи содержит в себе оптимальные решения подзадач. Перекрывающиеся подзадачи означают, что алгоритм решения задачи многократно обращается к одним и тем же подзадачам.
В отличие от традиционных методов оптимизации, таких как линейное программирование, динамическое программирование позволяет решать нелинейные задачи, задачи с дискретными переменными и задачи, в которых необходимо принимать последовательные решения [9, с. 67], делая динамическое программирование особенно ценным инструментом при решении экономических задач, связанных с распределением ресурсов.
Преимущества динамического программирования включают:
1. Возможность решения сложных многоэтапных задач путем их декомпозиции на более простые подзадачи.
2. Высокую эффективность алгоритмов динамического программирования благодаря хранению промежуточных результатов и исключению повторных вычислений.
3. Применимость к широкому классу задач оптимизации, включая задачи с дискретными переменными, нелинейные задачи и задачи с ограничениями.
Карасева Р.Б. отмечает, что «динамическое программирование активно применяется в экономических исследованиях для решения задач оптимального распределения ресурсов, планирования инвестиций, управления запасами и других экономических задач» [14, с. 63]. Метод динамического программирования особенно эффективен при решении задач распределения ограниченных ресурсов, когда необходимо найти такое распределение, которое максимизирует общий эффект или минимизирует общие затраты.
В контексте цифровой трансформации экономики применение методов динамического программирования приобретает новое значение. Цифровая трансформация существенно изменяет подходы к экономическому моделированию, требуя разработки новых методов и алгоритмов, учитывающих специфику цифровой экономики [23, с. 123].
Таким образом, динамическое программирование, благодаря своей гибкости и эффективности, становится одним из ключевых методов оптимизации в условиях цифровой экономики.
1.2. Методы динамического программирования в экономических задачах
Динамическое программирование нашло широкое применение в решении различных экономических задач благодаря своей способности эффективно решать многоэтапные оптимизационные проблемы. В экономическом моделировании этот метод используется для оптимизации процессов распределения ресурсов, инвестиционного планирования, управления запасами, планирования производства и других задач, требующих принятия последовательных решений.
Экономические задачи зачастую имеют многоэтапную структуру, где решения, принимаемые на каждом этапе, влияют на возможности и результаты последующих этапов [20, с. 156], делая метод динамического программирования особенно подходящим для решения таких задач, поскольку он позволяет разбить сложную проблему на последовательность более простых подзадач.
Одной из классических экономических задач, решаемых методами динамического программирования, является задача оптимального распределения ресурсов. В этой задаче требуется распределить ограниченные ресурсы между различными объектами или направлениями вложений таким образом, чтобы максимизировать общую эффективность или минимизировать общие затраты [14, с. 64].
Формальная постановка задачи оптимального распределения ресурсов может быть представлена следующим образом:
Максимизировать (или минимизировать) функцию:
F(x₁, x₂, ..., xₙ) = f₁(x₁) + f₂(x₂) + ... + fₙ(xₙ) (2)
При ограничениях:
x₁ + x₂ + ... + xₙ = R
xᵢ ≥ 0, i = 1, 2, ..., n
где:
- n – количество объектов или направлений вложений;
- xᵢ - объем ресурсов, выделяемых i-му объекту;
- fᵢ(xᵢ) – функция эффективности или затрат для i-го объекта;
- R – общий объем доступных ресурсов.
Для решения этой задачи методом динамического программирования используется принцип оптимальности Беллмана и рекуррентные соотношения. Решение начинается с последнего этапа и продвигается к первому, на каждом шаге находя оптимальное решение для текущей подзадачи [24, с. 90].
Методы динамического программирования особенно эффективны при решении задач распределения инвестиций, когда необходимо найти оптимальный портфель инвестиционных проектов или оптимальное распределение капитальных вложений между различными направлениями [2, с. 37]. В этих задачах целью является максимизация общей прибыли или эффективности инвестиций при ограниченном бюджете.
Еще одной важной экономической задачей, решаемой методами динамического программирования, является задача управления запасами. В этой задаче требуется определить оптимальные объемы и сроки заказов товаров или материалов, чтобы минимизировать общие затраты на хранение и поставку при удовлетворении заданного спроса [4, с. 125]. Бородич Т.А. и Богданов В.И. указывают, что «динамическое программирование позволяет эффективно решать задачи управления запасами, учитывая различные факторы, такие как переменный спрос, различные затраты на хранение и поставку, и ограничения на складские мощности» [4, с. 125].
В задачах планирования производства методы динамического программирования применяются для определения оптимального графика производства, который минимизирует общие затраты при удовлетворении заданного спроса. Динамическое программирование позволяет учесть различные факторы, влияющие на производственный процесс, такие как затраты на производство, затраты на хранение готовой продукции, затраты на изменение уровня производства и ограничения на производственные мощности [22, с. 10].
Методы динамического программирования также применяются в финансовой экономике для решения задач оптимизации портфеля ценных бумаг. Динамическое программирование позволяет найти оптимальный портфель ценных бумаг, который максимизирует ожидаемую доходность при заданном уровне риска или минимизирует риск при заданном уровне доходности [25, с. 25]. В этих задачах учитываются различные факторы – ожидаемая доходность ценных бумаг, их волатильность, корреляция между доходностями различных ценных бумаг и ограничения на инвестиции в отдельные ценные бумаги.
В контексте цифровой трансформации экономики применение методов динамического программирования для решения экономических задач приобретает новое значение. Цифровизация бизнес-процессов и появление новых технологий создают новые возможности и вызовы для экономического моделирования. Как отмечает Жуков А.О., «цифровая трансформация требует разработки новых методов и алгоритмов, учитывающих специфику цифровой экономики, такие как большие объемы данных, нелинейные взаимосвязи и динамически изменяющиеся условия» [12, с. 5].
Таким образом, методы динамического программирования, благодаря своей гибкости и эффективности, становятся важным инструментом для решения этих задач.
1.3. Динамическое программирование как инструмент оптимизации инвестиционных решений
Инвестиционные решения играют ключевую роль в развитии предприятий и экономики в целом. Они связаны с распределением ограниченных финансовых ресурсов между различными проектами или направлениями деятельности с целью получения максимальной экономической отдачи в будущем. В этом контексте динамическое программирование выступает как эффективный инструмент оптимизации инвестиционных решений, позволяющий учесть многоэтапность процесса инвестирования и взаимосвязь между решениями, принимаемыми на разных этапах.
Задача оптимального распределения инвестиций по объектам вложения является одной из ключевых задач в инвестиционном анализе [14, с. 63]. Эта задача может быть эффективно решена методами динамического программирования, которые позволяют найти оптимальное распределение ограниченного инвестиционного бюджета между различными проектами или направлениями вложений.
Фрагмент для ознакомления
3
1. Александрова, Ю. Н. Оптимальное распределение ресурсов между предприятиями региона с помощью методов динамического программирования / Ю. Н. Александрова // Самарский государственный архитектурно-строительный университет. Том Часть 2. – Самара: Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Самарский государственный архитектурно-строительный университет», 2013. – С. 420-422.
2. Анфиногентова, М. Д. Распределение инвестиций при помощи методов динамического программирования / М. Д. Анфиногентова, Г. В. Щербаков, М. В. Курганова // Modern Science. – 2021. – № 5-3. – С. 36-39.
3. Арзуманян, Ю. В. Основы цифровой трансформации: учебное пособие / Ю. В. Арзуманян, М. Б. Вольфсон. – Санкт-Петербург: СПбГУТ им. М.А. Бонч-Бруевича, 2022. – 129 с.
4. Бородич, Т. А. Динамическое программирование как метод управления запасами промышленного предприятия / Т. А. Бородич, В. И. Богданов // Брянск: Федеральное государственное бюджетное образовательное учреждение высшего образования «Брянский государственный инженерно-технологический университет», 2020. – С. 124-126.
5. Бурцев, Д. С., Гаврилюк, Е. С., Изотова, А. Г., Лебедева, А. С., Леонтьева, И. Н., Литвинова Н. А., Кан, Е. Н., Сатторов, Ф. Э. Инфраструктура и ресурсное обеспечение цифровой экономики – СПб: Университет ИТМО, 2021. – 190 с.
6. Вырыпаева, Н. В. Решение задачи вложения средств в предприятия методом динамического программирования / Н. В. Вырыпаева, Т. А. Уразаева // Поволжский государственный технологический университет. Том Часть 3. – Йошкар-Ола: Поволжский государственный технологический университет, 2014. – С. 248-249. –
7. Галочкин, В. Т. Эконометрика: учебник и практикум для вузов / В. Т. Галочкин. – Москва: Издательство Юрайт, 2025. – 293 с.
8. Головашкина, А. А. Значение цифровой трансформации в современных бизнес-моделях / А. А. Головашкина // Молодой ученый. – 2022. – № 44 (439). – С. 242-245.
9. Дмитриев, А. В. Регулярная и хаотическая динамика социально-экономических систем: Монография / А. В. Дмитриев. – Ижевск: Регулярная и хаотическая динамика, Институт компьютерных исследований, 2016. – 160 с.
10. Докучаев, А. В. Математическое моделирование распределения ресурсов в задаче сетевого планирования средствами стохастического динамического программирования: диссертация ... кандидата физико-математических наук: 05.13.18 / Докучаев Александр Владимирович; Место защиты: Ульян. гос. ун-т. – Самара, 2011. – 164 с.
11. Ефименко, С.В. Финансовое моделирование в оценке и управлении стоимостью компании: автореферат дис. ... кандидата экономических наук: 08.00.10, 08.00.13 / Ефименко Сергей Викторович; Место защиты: Рос. эконом. акад. им. Г.В. Плеханова. – Москва, 2010. – 22 с.
12. Жуков, А. О. Автоматизация и цифровая трансформация основных бизнес-процессов промышленных предприятий с помощью искусственного интеллекта / А. О. Жуков, С. В. Пономарева, Н. А. Мерзлякова // Вестник евразийской науки. – 2023. – Т. 15, № 2. – 17 с.
13. Карасева, Р. Б. Математика в системе образования / Р. Б. Карасева // Гуманитарные и социально-экономические проблемы развития современного общества // Под общей редакцией В.П. Плосконосовой. – Омск Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Сибирская государственная автомобильно-дорожная академия (СибАДИ)», 2015. – С. 123-127.
14. Карасева, Р. Б. Оптимальное распределение инвестиций по объектам вложения методами динамического программирования / Р. Б. Карасева // Научно-методический электронный журнал «Концепт». – 2016. – № 7. – С. 62–67.
15. Карасева, Р. Б. Тенденции современного математического образования / Р. Б. Карасева // Актуальные проблемы преподавания математики в техническом вузе. – 2015. – № 3. – С. 60-65.
16. Кугаенко, А. А. Методы динамического моделирования в управлении экономикой: Учебное пособие / А. А. Кугаенко, П. Е. Кондрашов. – Москва: Университетская книга, 2005. – 456 с.
17. Маркин, Ю. П. Экономический анализ: Учебное пособие для студентов вузов, обучающихся по направлению «Экономика» и другим экономическим специальностям / Ю. П. Маркин. – 3-е издание, стереотипное. – Москва: ИД Университетская книга, 2011. – 450 с.
18. Методы моделирования динамических процессов в различных средах: Сборник научных трудов. – Нальчик: Кабардино-Балкарский государственный университет им. Х.М. Бербекова, 2023. – 162 с.
19. Некрылов, Н. С. Решение задач оптимального распределения ресурсов при обслуживании авиационной техники методами динамического программирования / Н. С. Некрылов // Воронеж: Воронежский институт МВД России, 2019. – С. 110-111.
20. Орехов, Н. А. Математические методы и модели в экономике: учеб. пособие для студентов вузов, обучающихся по экон. специальностям / Н. А. Орехов; Н.А. Орехов, А.Г. Левин, Е.А. Горбунов ; под ред. Н.А. Орехова. – Москва: ЮНИТИ, 2004. – 302 с.
21. Пустовойтов, П. Е. Основы математического моделирования: учеб. пособие. – Харьков: ХПИ, 2011. – 279 с.
22. Сельвинский, В. В. Оптимальное распределение инвестиций при планировании производства / В. В. Сельвинский, В. О. Мамаев // Вестник Амурского государственного университета. Серия: Естественные и экономические науки. – 2020. – № 89. – С. 9-12.
23. Симонов, С. В. Экономическое моделирование процессов цифровой трансформации / С. В. Симонов // Modern Economy Success. – 2023. – № 3. – С. 122-127.
24. Соловьев, В. И. Методы оптимальных решений / В. И. Соловьев; Финансовый университет при Правительстве Российской Федерации. – Москва: Финансовый университет при Правительстве Российской Федерации (Финансовый университет), 2012. – 162 с.
25. Суханова, А. Г. Оптимизация портфеля ценных бумаг методами динамического программирования в системе MATHCAD / А. Г. Суханова // Системы компьютерной математики и их приложения. – 2016. – № 17. – С. 24-27.
26. Тюнин, А. И. Теоретические основы решения экономических задач математическими методами: матричный, метод математического программирования, метод динамического моделирования / А. И. Тюнин, В. И. Дьякова // Наука: научно-производственный журнал. – 2016. – № 2. – С. 174-176.
27. Экомическое моделирование процессов цифровой трансформации / В. П. Бауэр, В. В. Еремин, С. Н. Сильвестров, В. В. Смирнов // Журнал экономической теории. – 2019. – Т. 16, № 3. – С. 428-443.
28. Ятманова, П. М. Задача о распределении капитальных вложений / П. М. Ятманова // Научному прогрессу – творчество молодых. – 2023. – № 2. – С. 397-400.